2025年9月CCF—GESP(C++五级)编程能力等级认证试卷
五级
2025
2026-07-14 18:06:34
101次
一、单选题
函数 removeElements 删除单链表中所有结点值等于 val 的结点,并返回新的头结点,其中链表头结点为head ,则横线处填写( )

| A. Node* del = cur; cur = DEL->NEXT; 删除 Del; |
B. Node* del = cur->next; cur->next = del; delete del; |
| C. Node* del = cur->next; cur->next = del->next; delete del; |
D. Node* del = cur->next; delete del; cur->next = del->next; |
【知识点】 CCF—GESP C++五级
下述C++代码实现了快速排序算法,下面说法错误的是( )。

| A. . 快速排序之所以叫“快速”,是因为它在平均情况下运行速度较快,常数小、就地排序,实践中通常比归并排序更高效。 |
B. 在平均情况下,划分的递归层数为 log n,每层中的总循环数为 ,总时间为 O(nlog n)。 |
| C. 在最差情况下,每轮划分操作都将长度为 的数组划分为长度为 0 和 n-1的两个子数组,此时递归层数达到 n,每层中的循环数为 ,总时间为 。 |
D. 划分函数 partition 中“从右往左查找”与“从左往右查找”的顺序可以交换 |
【知识点】 CCF—GESP C++五级
函数 hasCycle 采用Floyd快慢指针法判断一个单链表中是否存在环,链表的头节点为 head ,即用两个指针在链表上前进: slow 每次走 1 步, fast 每次走 2 步,若存在环, fast 终会追上 slow (相遇);若无环,fast 会先到达 nullptr,则横线上应填写( )。

| A. slow = slow->next; fast = fast->next->next; |
B. slow = fast->next; fast = slow->next->next; |
| C. slow = slow->next; fast = slow->next->next; |
D. slow = fast->next; fast = fast->next->next; |
【知识点】 CCF—GESP C++五级























